home *** CD-ROM | disk | FTP | other *** search
- DOCUMENTATION FOR BP7.x OS/2 PATCH
- ----------------------------------
-
- Borland has for a while offered a C++ compiler for OS/2, but Pascal people
- still have to go on waiting. With some minor alterationt to the compiler,
- units and the runtime library, you can now create 16-bit OS/2 programs for
- the OS/2 text modes and Presentation Manager. The German computer magazine
- c't has provided these patches for BP7.x
-
- After applying the patches, you can now compile your DOS programs for
- OS/2. In most cases compiling for a DOS or OS/2 platform is just a matter
- of a command line switch, or changing the "Target" in the patched IDE.
-
- The batch file "INSTALL.BAT" applies the patches to *copies* of your
- BP7.0 compiler and IDE (i.e., the original files are untouched).
-
- Fuller details as to how to apply the patches can be found below.
-
- I am currently trying to gather information about the OS/2 API calls, for
- the purpose of producing UNIT files to interface to the OS/2 API. Some of
- the API calls can already be found in the sources for the new DOS, CRT,
- and SYSTEM units. When I am able to gather sufficient information, I will
- upload the results to ftp-os2.cdrom.com and garbo.uwasa.fi. Note that this
- may take months.
-
-
- The files in this package are:
- ------------------------------
-
- BP7-OS2.DOC This file
- INSTALL.BAT Copies the original files and makes the patches
- PATCHBP.PAS Patches the compilers
- COMPATIB.PAS Unit which provides DOS interrupt compatibility
- CRT.PAS OS/2 port of the CRT unit
- DOS.PAS OS/2 port of the DOS unit
- MAKEPM.PAS Sets the flags for PM programs
- HELLO2.PAS Writes "Hello, world"
- HELLOPM.PAS "Hello, world!" in a PM application
- HELLOPM.RC Resource file for HELLOPM.PAS
- THREAD.PAS Demonstration for Threads
- VIDEO.PAS Direct video access unit
- OS2RTL.EXE Creates the OS/2 runtime library in OS2RTL\
-
-
- INSTALLATION PROCEDURE
- ----------------------
-
- When I installed the patches, I did not have a lot of guidance, and
- I was using the German language version. I sorted things out by trial
- and error. I later received the original English language version
- from someone whose name I have forgotten, and all I have done is to
- amend one or two things in it, and to provide this documentation).
-
- I have reduced all that I did into a number of steps. They may
- seem many, but they are actually quite straightforward.
-
- In order to apply the patch, take the following steps;
-
- 1. Make sure that the following executables are in your PATH statement
- so that they can be called by the patch routines;
- a. BPC.EXE
- b. TASM.EXE
- c. MAKE.EXE
-
- 2. Create a directory for your patched files, from where you will
- be running the OS/2 patches. It is important to make this decision
- before you start anything, as it will make things go a lot
- easier. I will refer to this directory from now on as "your
- BP-OS2 directory".
-
- 3. Change to your BP-OS2 directory, and UNZIP the file BP7-OS2.ZIP
- into this directory.
-
- 4. The batch file INSTALL.BAT assumes that your BP7.x binaries are
- in a directory called \BP\BIN on the current drive. If they are
- not, you need to edit this file to change all the references to
- \BP\BIN to the correct directory paths.
-
- 5. If you are using BP7.0, type "INSTALL"
- If you are using BP7.01, type "INSTALL 701"
-
- This will run the batch file that will copy the files;
- BP.EXE
- BPC.EXE
- into the current directory.
-
- They will be called
- BPOS2.EXE
- BPCOS2.EXE respectively
-
- Then it will compile PATCHBP.EXE, and apply it to the EXE files that
- have been copied.
-
- What the patch does is;
- a. To add a new command line parameter "-CO" to your new
- BPCOS2.EXE, to compile for an OS/2 platform. You can
- still use the patched executable to compile for a DOS
- platform by using the "-CD" parameter, and for DPMI, by
- using the "-CP" parameter.
-
- b. The unit files produced when you compile a unit for OS/2
- will have the extension "TPO".
-
- c. In the new BPOS2 IDE, there will be a new target platform
- (OS/2). This replaces "Windows" in the IDE.
-
- d. The default TPL file for OS/2 compilation is now
- OS2.TPL
-
- That's about it really.
-
- 6. Type "OS2RTL" - to extract the OS/2 run-time library files. This
- creates a sub-directory called "OS2RTL" in the directory in which
- you are operating, and further sub-directories called "INC", "LIB"
- and "SYS" in that "OS2RTL" directory. The run-time files are
- extracted into these directories.
-
- 7. Change into the OS2RTL subdirectory.
-
- 8. Edit the file "MAKEFILE". You should change the line
- "BP = \OS2"
-
- to your BP-OS2 directory (e.g., BP = C:\BP\OS2)
-
- 9. Type "MAKE" - this will run MAKE.EXE, which will call TASM.EXE to
- compile the assembly language source files that are needed to create
- the SYSTEM UNIT.
-
- 10. After MAKE has finished, there will be a file called "OS2.TPL".
- Copy this into your BP-OS2 directory.
-
- 11. Change to your BP-OS2 directory, and compile the following source
- files for OS/2 compatibility;
-
- a. COMPATIB.PAS
- b. DOS.PAS
- c. CRT.PAS
-
- i.e., you will type
-
- BPCOS2 -CO COMPATIB
- BPCOS2 -CO DOS
- BPCOS2 -CO CRT
-
- This will produce the unit files;
-
- COMPATIB.TPO
- DOS.TPO and
- CRT.TPO.
-
- With the new SYSTEM.TPO, you now have all you need to compile 16-bit OS/2
- programs.
-
- That's all, folks!
-
- You can compile the example programs to see the results of your efforts.
-
- The patches (BPOS2.EXE and BPCOS2.EXE) can actually be copied
- into your BP7 directory. They will read the same .CFG, .TP, and
- .DLL files as the unpatched versions. There will be no clash here,
- because the units they produce and use have an extension .TPO
- However, if you have installed your sources for BP7, you have
- to be careful not to overwrite them with the OS/2 versions of
- SYSTEM.PAS, DOS.PAS and CRT.PAS. Thus it may be better to keep
- the patched EXEs in a separate directory.
-
- The only things being duplicated in the whole system are the two
- patched executables and their source code. All the other binaries
- are shared with the unpatched versions.
-
- THE EXAMPLE PROGRAMS
- --------------------
-
- 1. HELLO2.PAS - this is a text-mode "hello" program. All you need is
- to compile this, and run it. If you run it from a DOS prompt, you
- will get the message "This program requires OS/2" - it is a sign
- that you are well and truly home.
-
- 2. HELLOPM.PAS - this is a Presentation Manager "hello" program -
- complete with menus, dialog boxes, etc.
-
- In order to compile and run the HELLOPM program and any other PM
- program, you need to take the following steps;
-
- a. Compile MAKEPM.PAS as either a DOS or OS/2 program
-
- b. Compile your PM program
-
- c. Run MAKEPM on your PM program
- e.g. "MAKEPM PMPROG.EXE"
-
- d. Run the OS/2 RC.EXE on your PM program and its resource file.
- RC.EXE comes with the OS/2 operating system.
-
- e.g. "RC HELLOPM.RC HELLOPM.EXE"
-
- NOTE: You may have to run RC from an OS/2 command prompt.
- Running it from a DOS prompt produces an error message.
-
- e. Run your OS/2 PM program!
-
-
- DISCLAIMER
- ----------
- I AM ONLY SUPPLYING THIS PATCH BECAUSE MANY PEOPLE HAVE ASKED FOR IT.
- I NEITHER WROTE IT, NOR AM I RESPONSIBLE FOR ITS USE. YOU USE THIS
- PATCH ENTIRELY AT YOUR OWN RISK. I WILL ACCEPT NO RESPONSIBILITY
- FOR ANY LOSS OR DAMAGE, WHETHER FINANCIAL, PHYSICAL, MENTAL,
- EMOTIONAL, MARITAL, SOCIAL, PROFESSIONAL, OR OTHERWISE, THAT MAY ARISE FROM
- THE USE OR THE PURPORTED USE OF THIS PATCH FOR ANY PURPOSE WHATSOEVER.
-
- SO LET IT BE WRITTEN, SO LET IT BE DONE.
-
- -------------------------------------
- Dr. A. Olowofoyeku
- Keele University
- England.
-
- E-mail: laa12@seq1.keele.ac.uk
-
- --------------------------------------
-
-